<!DOCTYPE html PUBLIC 
    "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
                xmlns:h="http://java.sun.com/jsf/html"
                xmlns:f="http://java.sun.com/jsf/core"
                xmlns:ui="http://java.sun.com/jsf/facelets"
                xmlns:p="http://primefaces.org/ui">  
    <p:panel header="#{bundle_cliente.label_panel_titulo}" 
             style="border: none;padding: 0px" 
             rendered="#{clienteBacking.renderedListaClientes}">
        <br/>
        <table cellpadding="0" cellspacing="0" width="100%">
            <tr>
                <td valign="top" width="250">
                    <p:panel header="#{bundle_cliente.label_filtro_titulo}">
                        <table cellpadding="0" cellspacing="0" width="100%">
                            <tr>
                                <td align="center">
                                    <p:panelGrid style="width: 90%; border: none; padding: 5px"> 

                                        <p:row>
                                            <p:column>
                                                <br/>
                                                <h:outputLabel value="#{bundle_cliente.label_filtro_tipo}" />
                                                <br/>
                                                <p:selectOneMenu label="#{bundle_cliente.label_filtro_tipo}"
                                                                 value="#{clienteBacking.tipoDocumento}" 
                                                                 converter="converterTipoDocumento"
                                                                 style="width: 100%"> 
                                                    <f:selectItem itemLabel="#{bundle_comun.label_seleccione_registro}" itemValue="#{null}" />
                                                    <f:selectItems value="#{tipoDocumentoBacking.tiposDocumentosList}" 
                                                                   var="td"
                                                                   itemLabel="#{td.tdocCodigo} - #{td.tdocNombre}" 
                                                                   itemValue="#{td}" /> 
                                                </p:selectOneMenu>
                                            </p:column>
                                        </p:row>

                                        <p:row>
                                            <p:column>
                                                <h:outputLabel value="#{bundle_cliente.label_filtro_identificacion}" />
                                                <br/>
                                                <p:inputText style="width: 95%"
                                                             label="#{bundle_cliente.label_filtro_identificacion}"
                                                             maxlength="12"
                                                             value="#{clienteBacking.identificacion}" />
                                            </p:column>
                                        </p:row>

                                        <p:row>
                                            <p:column>
                                                <h:outputLabel value="#{bundle_cliente.label_filtro_nombre}" />
                                                <br/>
                                                <p:inputText style="width: 95%"
                                                             label="#{bundle_cliente.label_filtro_nombre}"
                                                             required="false"
                                                             maxlength="50"
                                                             value="#{clienteBacking.nombre}" /> 
                                                <br/><br/>
                                            </p:column>
                                        </p:row>

                                    </p:panelGrid>
                                </td>
                            </tr>
                        </table>
                        <f:facet name="footer">
                            <p:commandButton value="#{bundle_comun.button_consultar}" 
                                             title="#{bundle_comun.button_consultar}" 
                                             action="#{clienteBacking.listarPorFiltros}" 
                                             update="@form"
                                             oncomplete="widgetClientes.filter()"
                                             icon="consultar"
                                             style="margin:0"/>
                            <p:commandButton value="#{bundle_comun.button_limpiar}" 
                                             title="#{bundle_comun.button_limpiar}" 
                                             action="#{clienteBacking.resetFiltros}"
                                             update="@form"
                                             icon="limpiar" />
                        </f:facet>
                    </p:panel>  
                </td>
                <td>&nbsp;</td>
                <td valign="top">
                    <p:fieldset id="listaClientes"
                                legend="#{bundle_cliente.label_resultados_titulo}">
                        <table cellpadding="0" cellspacing="0" border="0" width="100%">
                            <tr>
                                <td height="30">
                                    <table cellpadding="0" cellspacing="0" width="100%">
                                        <tr>
                                            <td align="left">
                                                <p:graphicImage id="help" url="/resources/images/24x24/help-icon.png" style="vertical-align: middle" />
                                                <p:tooltip for="help" showEffect="slide" hideEffect="slide" >
                                                    <b>#{bundle_cliente.label_resultados_ayuda_titulo}</b>
                                                    #{bundle_cliente.label_resultados_ayuda_descripcion}
                                                </p:tooltip>
                                            </td>
                                            <td align="right">
                                                <p:splitButton value="#{bundle_comun.button_nuevo}" 
                                                               title="#{bundle_cliente.label_nuevo_titulo}"
                                                               action="#{clienteBacking.lanzarCrear}" 
                                                               oncomplete="crearDlg.show();" 
                                                               update=":formCrear"
                                                               icon="nuevo">  

                                                    <p:menuitem value="#{bundle_comun.button_modificar}" 
                                                                title="#{bundle_cliente.label_modificar_titulo}"
                                                                action="#{clienteBacking.lanzarModificar}" 
                                                                update=":formModificar, :formGestion:messages, :formGestion:msg"
                                                                icon="modificar"/> 

                                                    <p:menuitem value="#{bundle_comun.button_eliminar}" 
                                                                title="#{bundle_cliente.label_eliminar_titulo}"
                                                                action="#{clienteBacking.lanzarEliminar}" 
                                                                update=":formEliminar, :formGestion:messages, :formGestion:msg"
                                                                icon="eliminar"/>
                                                    <p:separator />  
                                                    <p:menuitem value="#{bundle_comun.button_ver}" 
                                                                title="#{bundle_cliente.label_ver_titulo}"
                                                                action="#{clienteBacking.lanzarVer}" 
                                                                update=":formVer, :formGestion:messages, :formGestion:msg"
                                                                icon="ver"/>
                                                </p:splitButton>
                                                <p:spacer width="10" />
                                                <p:commandButton value="#{bundle_cliente.button_productos}" 
                                                                 title="#{bundle_cliente.label_productos_titulo}" 
                                                                 action="#{clienteBacking.lanzarVerProductos}"
                                                                 update="@form, :formGestion:tabProductos"
                                                                 icon="productos"/>
                                            </td>
                                        </tr>
                                    </table>
                                </td>
                            </tr> 
                            <tr>
                                <td>
                                    <p:dataTable id="clientes"  
                                                 widgetVar="widgetClientes"
                                                 var="cliente" 
                                                 value="#{clienteBacking.clientesList}"    
                                                 rowKey ="#{cliente.cliId}" 
                                                 paginator="true"
                                                 paginatorPosition="bottom"
                                                 filteredValue="#{clienteBacking.filteredClientesList}"
                                                 rows="10" 
                                                 selectionMode="single"
                                                 selection="#{clienteBacking.selectedCliente}"
                                                 emptyMessage="#{bundle_comun.label_paginador_empty}"
                                                 paginatorTemplate="#{bundle_comun.label_paginador_template}"  
                                                 currentPageReportTemplate="#{bundle_comun.label_paginador_currentTemplate}"
                                                 rowsPerPageTemplate="#{bundle_comun.label_paginador_rowsTemplate}">

                                        <p:column headerText="&nbsp;#{bundle_cliente.label_resultados_tabla_tipo}" 
                                                  sortBy="#{cliente.tdocCodigo.tdocNombre}"
                                                  filterBy="#{cliente.tdocCodigo.tdocCodigo}"
                                                  filterOptions="#{clienteBacking.tiposDocumentosOptions}"  
                                                  filterMatchMode="exact"
                                                  style="text-align: left">              
                                            #{cliente.tdocCodigo.tdocNombre}
                                        </p:column>

                                        <p:column headerText="&nbsp;#{bundle_cliente.label_resultados_tabla_identificacion}" 
                                                  sortBy="#{cliente.cliId}"
                                                  filterBy="#{cliente.cliId}"
                                                  filterMatchMode="contains"
                                                  filterStyle="width: 100px"
                                                  filterMaxLength="50"
                                                  style="text-align: left">              
                                            #{cliente.cliId}
                                        </p:column>

                                        <p:column headerText="&nbsp;#{bundle_cliente.label_resultados_tabla_nombre}" 
                                                  sortBy="#{cliente.cliNombre}"
                                                  filterBy="#{cliente.cliNombre}"
                                                  filterMatchMode="contains"
                                                  filterStyle="width: 200px"
                                                  filterMaxLength="50"
                                                  style="text-align: left">              
                                            #{cliente.cliNombre}
                                        </p:column>
                                    </p:dataTable>
                                </td>
                            </tr>
                        </table>                        
                    </p:fieldset>                    
                </td>
            </tr>
        </table>
    </p:panel>
</ui:composition>